Skip to content

1. Karush–Kuhn–Tucker (KKT) conditions

1. Concept of KKT Condition

(1) problems for solve

The standard-form of optimization problem is given as [1] :

(1.1.1)minimize f(x),s.t.gi(x)0hj(x)=0

Where f(x) is objective, g are inequality constraints.

Then the Karush-Kuhn-Tucker Condition[1:1], Firstly, we can construct the following Lagrangian function :

(1.1.2)L(x,μ,λ)=f(x)+μTg(x)+λTh(x)=L(x,α)

Re-write (1.1.2) gives :

(1.1.3)L=[μTλT][g(x)h(x)]=αT[g(x)h(x)]

(2) The KKT condition

The Karush-Kuhn-Tucker Condition state the following sufficient and necessary conditions :

  1. Sufficiency : If (x,α) is the saddle point of L(x,α) in xX,μ0 then x is an optimal vector for the optimization problem (1.1.1)
  2. Necessity : Suppose f(x) and gi(x), are convex in X , and there exists :
(1.2.1)x0relint(X)s.t.g(x0)<0

that is, slater's condition[2] holds, Then with an optimal vector x, for the optimization problem, there is a vector

(1.2.2)α=[μλ]

satisfying μ0, and the (x),α is the saddle point of L(x,α)

(3) Necessary condition

For the part :

(1.3.1)minα,β0L(x,μ,λ)=f(x)+i=1mμigi(x)+j=1kλjhj(x)(gi0,hj=0)

then :

(1.3.2)0L(x)=f(x)+j=1lλjhj(x)+i=1mμigi(x)=f(x)

For minimizing f(x), we have following conditions :

(1.3.3){hj(x)=0gi(x)0primary feasibilityμi(x)0dual feasibilityi=1mμigi(x)=0Complementary Slackness

The equation (1.3.2~3), or often (1.3.3) are called KKT condition

Complementary Conditions We note For (1.3.3), the KKT conditions for inequality boundaries are complementary conditions :

ξj0xjαj0ξj(xjαj)=0

For an illustration, see [^3]

Feasibility :

  • This is a necessary condition for finding the optimal solution, but it only holds true if the problem satisfies certain regularity (such as the Slater condition).
  • For non-convex problems, points satisfying the KKT conditions may be local optima, saddle points, or even extreme points.

  1. https://en.wikipedia.org/wiki/Karush–Kuhn–Tucker_conditions ↩︎ ↩︎

  2. https://en.wikipedia.org/wiki/Slater's_condition ↩︎